//go:build linux || darwin
// +build linux darwin

//
package io

import (
	"os/exec"
)

// Rm 大批量删除文件
func Rm(dir string) error {
	// find | xargs 支持巨量文件删除
	// find / -name '*.log' -print0 |xargs  -0 -n 1000 rm -f
	cmd := exec.Command(
		"find",
		dir,
		"-type", "f",
		"-name", "\"*.prof\"",
		"-mtime", "+7",
		"-print0",
		"|",
		"xargs",
		"-0",
		"-n",
		"1000",
		"rm",
		"-f",
	)
	// 支持管道
	cmdSh := exec.Command("sh", "-c", cmd.String())
	return cmdSh.Run()
}
